/*!
 * jQuery Steps v1.1.0 - 09/04/2014
 * Copyright (c) 2014 Rafael Staib (https://www.jquery-steps.com)
 * Licensed under MIT https://www.opensource.org/licenses/MIT
 */
!function (a, b) {
    function c(a, b) {
        o(a).push(b)
    }

    function d(d, e, f) {
        var g = d.children(e.headerTag), h = d.children(e.bodyTag);
        g.length > h.length ? R(Z, "contents") : g.length < h.length && R(Z, "titles");
        var i = e.startIndex;
        if (f.stepCount = g.length, e.saveState && a.cookie) {
            var j = a.cookie(U + q(d)), k = parseInt(j, 0);
            !isNaN(k) && k < f.stepCount && (i = k)
        }
        f.currentIndex = i, g.each(function (e) {
            var f = a(this), g = h.eq(e), i = g.data("mode"), j = null == i ? $.html : r($, /^\s*$/.test(i) || isNaN(i) ? i : parseInt(i, 0)), k = j === $.html || g.data("url") === b ? "" : g.data("url"), l = j !== $.html && "1" === g.data("loaded"), m = a.extend({}, bb, {
                title: f.html(),
                content: j === $.html ? g.html() : "",
                contentUrl: k,
                contentMode: j,
                contentLoaded: l
            });
            c(d, m)
        })
    }

    function e(a) {
        a.triggerHandler("canceled")
    }

    function f(a, b) {
        return a.currentIndex - b
    }

    function g(b, c) {
        var d = i(b);
        b.unbind(d).removeData("uid").removeData("options").removeData("state").removeData("steps").removeData("eventNamespace").find(".actions a").unbind(d), b.removeClass(c.clearFixCssClass + " vertical");
        var e = b.find(".content > *");
        e.removeData("loaded").removeData("mode").removeData("url"), e.removeAttr("id").removeAttr("role").removeAttr("tabindex").removeAttr("class").removeAttr("style")._removeAria("labelledby")._removeAria("hidden"), b.find(".content > [data-mode='async'],.content > [data-mode='iframe']").empty();
        var f = a('<{0} class="{1}"></{0}>'.format(b.get(0).tagName, b.attr("class"))), g = b._id();
        return null != g && "" !== g && f._id(g), f.html(b.find(".content").html()), b.after(f), b.remove(), f
    }

    function h(a, b) {
        var c = a.find(".steps li").eq(b.currentIndex);
        a.triggerHandler("finishing", [b.currentIndex]) ? (c.addClass("done").removeClass("error"), a.triggerHandler("finished", [b.currentIndex])) : c.addClass("error")
    }

    function i(a) {
        var b = a.data("eventNamespace");
        return null == b && (b = "." + q(a), a.data("eventNamespace", b)), b
    }

    function j(a, b) {
        var c = q(a);
        return a.find("#" + c + V + b)
    }

    function k(a, b) {
        var c = q(a);
        return a.find("#" + c + W + b)
    }

    function l(a, b) {
        var c = q(a);
        return a.find("#" + c + X + b)
    }

    function m(a) {
        return a.data("options")
    }

    function n(a) {
        return a.data("state")
    }

    function o(a) {
        return a.data("steps")
    }

    function p(a, b) {
        var c = o(a);
        return (0 > b || b >= c.length) && R(Y), c[b]
    }

    function q(a) {
        var b = a.data("uid");
        return null == b && (b = a._id(), null == b && (b = "steps-uid-".concat(T), a._id(b)), T++, a.data("uid", b)), b
    }

    function r(a, c) {
        if (S("enumType", a), S("keyOrValue", c), "string" == typeof c) {
            var d = a[c];
            return d === b && R("The enum key '{0}' does not exist.", c), d
        }
        if ("number" == typeof c) {
            for (var e in a)if (a[e] === c)return c;
            R("Invalid enum value '{0}'.", c)
        } else R("Invalid key or value type.")
    }

    function s(a, b, c) {
        return B(a, b, c, v(c, 1))
    }

    function t(a, b, c) {
        return B(a, b, c, f(c, 1))
    }

    function u(a, b, c, d) {
        if ((0 > d || d >= c.stepCount) && R(Y), !(b.forceMoveForward && d < c.currentIndex)) {
            var e = c.currentIndex;
            return a.triggerHandler("stepChanging", [c.currentIndex, d]) ? (c.currentIndex = d, O(a, b, c), E(a, b, c, e), D(a, b, c), A(a, b, c), P(a, b, c, d, e, function () {
                    a.triggerHandler("stepChanged", [d, e])
                })) : (c.currentIndex = d, O(a, b, c), E(a, b, c, e), D(a, b, c), A(a, b, c), P(a, b, c, d, e, function () {
                    a.triggerHandler("stepChanged", [d, e])
                })), !0
        }
    }

    function v(a, b) {
        return a.currentIndex + b
    }

    function w(b) {
        var c = a.extend(!0, {}, cb, b);
        return this.each(function () {
            var b = a(this), e = {currentIndex: c.startIndex, currentStep: null, stepCount: 0, transitionElement: null};
            b.data("options", c), b.data("state", e), b.data("steps", []), d(b, c, e), J(b, c, e), G(b, c), c.autoFocus && 0 === T && j(b, c.startIndex).focus(), b.triggerHandler("init", [c.startIndex])
        })
    }

    function x(b, c, d, e, f) {
        (0 > e || e > d.stepCount) && R(Y), f = a.extend({}, bb, f), y(b, e, f), d.currentIndex !== d.stepCount && d.currentIndex >= e && (d.currentIndex++, O(b, c, d)), d.stepCount++;
        var g = b.find(".content"), h = a("<{0}>{1}</{0}>".format(c.headerTag, f.title)), i = a("<{0}></{0}>".format(c.bodyTag));
        return (null == f.contentMode || f.contentMode === $.html) && i.html(f.content), 0 === e ? g.prepend(i).prepend(h) : k(b, e - 1).after(i).after(h), K(b, d, i, e), N(b, c, d, h, e), F(b, c, d, e), e === d.currentIndex && E(b, c, d), D(b, c, d), b
    }

    function y(a, b, c) {
        o(a).splice(b, 0, c)
    }

    function z(b) {
        var c = a(this), d = m(c), e = n(c);
        if (d.suppressPaginationOnFocus && c.find(":focus").is(":input"))return b.preventDefault(), !1;
        var f = {left: 37, right: 39};
        b.keyCode === f.left ? (b.preventDefault(), t(c, d, e)) : b.keyCode === f.right && (b.preventDefault(), s(c, d, e))
    }

    function A(b, c, d) {
        if (d.stepCount > 0) {
            var e = d.currentIndex, f = p(b, e);
            if (!c.enableContentCache || !f.contentLoaded)switch (r($, f.contentMode)) {
                case $.iframe:
                    b.find(".content > .body").eq(d.currentIndex).empty().html('<iframe src="' + f.contentUrl + '" frameborder="0" scrolling="no" />').data("loaded", "1");
                    break;
                case $.async:
                    var g = k(b, e)._aria("busy", "true").empty().append(M(c.loadingTemplate, {text: c.labels.loading}));
                    a.ajax({url: f.contentUrl, cache: !1}).done(function (a) {
                        g.empty().html(a)._aria("busy", "false").data("loaded", "1"), b.triggerHandler("contentLoaded", [e])
                    })
            }
        }
    }

    function B(a, b, c, d) {
        var e = c.currentIndex;
        if (d >= 0 && d < c.stepCount && !(b.forceMoveForward && d < c.currentIndex)) {
            var f = j(a, d), g = f.parent(), h = g.hasClass("disabled");
            return g._enableAria(), f.click(), e === c.currentIndex && h ? (g._enableAria(!1), !1) : !0
        }
        return !1
    }

    function C(b) {
        b.preventDefault();
        var c = a(this), d = c.parent().parent().parent().parent(), f = m(d), g = n(d), i = c.attr("href");
        switch (i.substring(i.lastIndexOf("#") + 1)) {
            case"cancel":
                e(d);
                break;
            case"finish":
                h(d, g);
                break;
            case"next":
                s(d, f, g);
                break;
            case"previous":
                t(d, f, g)
        }
    }

    function D(a, b, c) {
        if (b.enablePagination) {
            var d = a.find(".actions a[href$='#finish']").parent(), e = a.find(".actions a[href$='#next']").parent();
            if (!b.forceMoveForward) {
                var f = a.find(".actions a[href$='#previous']").parent();
                f._enableAria(c.currentIndex > 0)
            }
            b.enableFinishButton && b.showFinishButtonAlways ? (d._enableAria(c.stepCount > 0), e._enableAria(c.stepCount > 1 && c.stepCount > c.currentIndex + 1)) : (d._showAria(b.enableFinishButton && c.stepCount === c.currentIndex + 1), e._showAria(0 === c.stepCount || c.stepCount > c.currentIndex + 1)._enableAria(c.stepCount > c.currentIndex + 1 || !b.enableFinishButton))
        }
    }

    function E(b, c, d, e) {
        var f = j(b, d.currentIndex), g = a('<span class="current-info audible">' + c.labels.current + " </span>"), h = b.find(".content > .title");
        if (null != e) {
            var i = j(b, e);
            i.parent().addClass("done").removeClass("error")._selectAria(!1), h.eq(e).removeClass("current").next(".body").removeClass("current"), g = i.find(".current-info"), f.focus()
        }
        f.prepend(g).parent()._selectAria().removeClass("done")._enableAria(), h.eq(d.currentIndex).addClass("current").next(".body").addClass("current")
    }

    function F(a, b, c, d) {
        for (var e = q(a), f = d; f < c.stepCount; f++) {
            var g = e + V + f, h = e + W + f, i = e + X + f, j = a.find(".title").eq(f)._id(i);
            a.find(".steps a").eq(f)._id(g)._aria("controls", h).attr("href", "#" + i).html(M(b.titleTemplate, {
                index: f + 1,
                title: j.html()
            })), a.find(".body").eq(f)._id(h)._aria("labelledby", i)
        }
    }

    function G(a, b) {
        var c = i(a);
        a.bind("canceled" + c, b.onCanceled), a.bind("contentLoaded" + c, b.onContentLoaded), a.bind("finishing" + c, b.onFinishing), a.bind("finished" + c, b.onFinished), a.bind("init" + c, b.onInit), a.bind("stepChanging" + c, b.onStepChanging), a.bind("stepChanged" + c, b.onStepChanged), b.enableKeyNavigation && a.bind("keyup" + c, z), a.find(".actions a").bind("click" + c, C)
    }

    function H(a, b, c, d) {
        return 0 > d || d >= c.stepCount || c.currentIndex === d ? !1 : (I(a, d), c.currentIndex > d && (c.currentIndex--, O(a, b, c)), c.stepCount--, l(a, d).remove(), k(a, d).remove(), j(a, d).parent().remove(), 0 === d && a.find(".steps li").first().addClass("first"), d === c.stepCount && a.find(".steps li").eq(d).addClass("last"), F(a, b, c, d), D(a, b, c), !0)
    }

    function I(a, b) {
        o(a).splice(b, 1)
    }

    function J(b, c, d) {
        var e = '<{0} class="{1}">{2}</{0}>', f = r(_, c.stepsOrientation), g = f === _.vertical ? " vertical" : "", h = a(e.format(c.contentContainerTag, "content " + c.clearFixCssClass, b.html())), i = a(e.format(c.stepsContainerTag, "steps " + c.clearFixCssClass, '<ul role="tablist"></ul>')), j = h.children(c.headerTag), k = h.children(c.bodyTag);
        b.attr("role", "application").empty().append(i).append(h).addClass(c.cssClass + " " + c.clearFixCssClass + g), k.each(function (c) {
            K(b, d, a(this), c)
        }), j.each(function (e) {
            N(b, c, d, a(this), e)
        }), E(b, c, d), L(b, c, d)
    }

    function K(a, b, c, d) {
        var e = q(a), f = e + W + d, g = e + X + d;
        c._id(f).attr("role", "tabpanel")._aria("labelledby", g).addClass("body")._showAria(b.currentIndex === d)
    }

    function L(a, b, c) {
        if (b.enablePagination) {
            var d = '<{0} class="actions {1}"><ul role="menu" aria-label="{2}">{3}</ul></{0}>', e = '<li><a href="#{0}" role="menuitem">{1}</a></li>', f = "";
            b.forceMoveForward || (f += e.format("previous", b.labels.previous)), f += e.format("next", b.labels.next), b.enableFinishButton && (f += e.format("finish", b.labels.finish)), b.enableCancelButton && (f += e.format("cancel", b.labels.cancel)), a.append(d.format(b.actionContainerTag, b.clearFixCssClass, b.labels.pagination, f)), D(a, b, c), A(a, b, c)
        }
    }

    function M(a, c) {
        for (var d = a.match(/#([a-z]*)#/gi), e = 0; e < d.length; e++) {
            var f = d[e], g = f.substring(1, f.length - 1);
            c[g] === b && R("The key '{0}' does not exist in the substitute collection!", g), a = a.replace(f, c[g])
        }
        return a
    }

    function N(b, c, d, e, f) {
        var g = q(b), h = g + V + f, j = g + W + f, k = g + X + f, l = b.find(".steps > ul"), m = M(c.titleTemplate, {
            index: f + 1,
            title: e.html()
        }), n = a('<li role="tab"><a id="' + h + '" href="#' + k + '" aria-controls="' + j + '">' + m + "</a></li>");
        n._enableAria(c.enableAllSteps || d.currentIndex > f), d.currentIndex > f && n.addClass("done"), e._id(k).attr("tabindex", "-1").addClass("title"), 0 === f ? l.prepend(n) : l.find("li").eq(f - 1).after(n), 0 === f && l.find("li").removeClass("first").eq(f).addClass("first"), f === d.stepCount - 1 && l.find("li").removeClass("last").eq(f).addClass("last"), n.children("a").bind("click" + i(b), Q)
    }

    function O(b, c, d) {
        c.saveState && a.cookie && a.cookie(U + q(b), d.currentIndex)
    }

    function P(b, c, d, e, f, g) {
        var h = b.find(".content > .body"), i = r(ab, c.transitionEffect), j = c.transitionEffectSpeed, k = h.eq(e), l = h.eq(f);
        switch (i) {
            case ab.fade:
            case ab.slide:
                var m = i === ab.fade ? "fadeOut" : "slideUp", o = i === ab.fade ? "fadeIn" : "slideDown";
                d.transitionElement = k, l[m](j, function () {
                    var b = a(this)._showAria(!1).parent().parent(), c = n(b);
                    c.transitionElement && (c.transitionElement[o](j, function () {
                        a(this)._showAria()
                    }).promise().done(g), c.transitionElement = null)
                });
                break;
            case ab.slideLeft:
                var p = l.outerWidth(!0), q = e > f ? -p : p, s = e > f ? p : -p;
                a.when(l.animate({left: q}, j, function () {
                    a(this)._showAria(!1)
                }), k.css("left", s + "px")._showAria().animate({left: 0}, j)).done(g);
                break;
            default:
                a.when(l._showAria(!1), k._showAria()).done(g)
        }
    }

    function Q(b) {
        b.preventDefault();
        var c = a(this), d = c.parent().parent().parent().parent(), e = m(d), f = n(d), g = f.currentIndex;
        if (c.parent().is(":not(.disabled):not(.current)")) {
            var h = c.attr("href"), i = parseInt(h.substring(h.lastIndexOf("-") + 1), 0);
            u(d, e, f, i)
        }
        return g === f.currentIndex ? (j(d, g).focus(), !1) : void 0
    }

    function R(a) {
        throw arguments.length > 1 && (a = a.format(Array.prototype.slice.call(arguments, 1))), new Error(a)
    }

    function S(a, b) {
        null == b && R("The argument '{0}' is null or undefined.", a)
    }

    a.fn.extend({
        _aria: function (a, b) {
            return this.attr("aria-" + a, b)
        }, _removeAria: function (a) {
            return this.removeAttr("aria-" + a)
        }, _enableAria: function (a) {
            return null == a || a ? this.removeClass("disabled")._aria("disabled", "false") : this.addClass("disabled")._aria("disabled", "true")
        }, _showAria: function (a) {
            return null == a || a ? this.show()._aria("hidden", "false") : this.hide()._aria("hidden", "true")
        }, _selectAria: function (a) {
            return null == a || a ? this.addClass("current")._aria("selected", "true") : this.removeClass("current")._aria("selected", "false")
        }, _id: function (a) {
            return a ? this.attr("id", a) : this.attr("id")
        }
    }), String.prototype.format || (String.prototype.format = function () {
        for (var b = 1 === arguments.length && a.isArray(arguments[0]) ? arguments[0] : arguments, c = this, d = 0; d < b.length; d++) {
            var e = new RegExp("\\{" + d + "\\}", "gm");
            c = c.replace(e, b[d])
        }
        return c
    });
    var T = 0, U = "jQu3ry_5teps_St@te_", V = "-t-", W = "-p-", X = "-h-", Y = "Index out of range.", Z = "One or more corresponding step {0} are missing.";
    a.fn.steps = function (b) {
        return a.fn.steps[b] ? a.fn.steps[b].apply(this, Array.prototype.slice.call(arguments, 1)) : "object" != typeof b && b ? void a.error("Method " + b + " does not exist on jQuery.steps") : w.apply(this, arguments)
    }, a.fn.steps.add = function (a) {
        var b = n(this);
        return x(this, m(this), b, b.stepCount, a)
    }, a.fn.steps.destroy = function () {
        return g(this, m(this))
    }, a.fn.steps.finish = function () {
        h(this, n(this))
    }, a.fn.steps.getCurrentIndex = function () {
        return n(this).currentIndex
    }, a.fn.steps.getCurrentStep = function () {
        return p(this, n(this).currentIndex)
    }, a.fn.steps.getStep = function (a) {
        return p(this, a)
    }, a.fn.steps.insert = function (a, b) {
        return x(this, m(this), n(this), a, b)
    }, a.fn.steps.next = function () {
        return s(this, m(this), n(this))
    }, a.fn.steps.previous = function () {
        return t(this, m(this), n(this))
    }, a.fn.steps.remove = function (a) {
        return H(this, m(this), n(this), a)
    }, a.fn.steps.setStep = function () {
        throw new Error("Not yet implemented!")
    }, a.fn.steps.skip = function () {
        throw new Error("Not yet implemented!")
    };
    var $ = a.fn.steps.contentMode = {html: 0, iframe: 1, async: 2}, _ = a.fn.steps.stepsOrientation = {
        horizontal: 0,
        vertical: 1
    }, ab = a.fn.steps.transitionEffect = {
        none: 0,
        fade: 1,
        slide: 2,
        slideLeft: 3
    }, bb = a.fn.steps.stepModel = {
        title: "",
        content: "",
        contentUrl: "",
        contentMode: $.html,
        contentLoaded: !1
    }, cb = a.fn.steps.defaults = {
        headerTag: "h1",
        bodyTag: "div",
        contentContainerTag: "div",
        actionContainerTag: "div",
        stepsContainerTag: "div",
        cssClass: "wizard",
        clearFixCssClass: "clearfix",
        stepsOrientation: _.horizontal,
        titleTemplate: '#title#',
        loadingTemplate: '<span class="spinner"></span> #text#',
        autoFocus: !1,
        enableAllSteps: !1,
        enableKeyNavigation: !0,
        enablePagination: !0,
        suppressPaginationOnFocus: !0,
        enableContentCache: !0,
        enableCancelButton: !1,
        enableFinishButton: !0,
        preloadContent: !1,
        showFinishButtonAlways: !1,
        forceMoveForward: !1,
        saveState: !1,
        startIndex: 0,
        transitionEffect: ab.none,
        transitionEffectSpeed: 200,
        onStepChanging: function () {
            return !0
        },
        onStepChanged: function () {
        },
        onCanceled: function () {
        },
        onFinishing: function () {
            return !0
        },
        onFinished: function () {
        },
        onContentLoaded: function () {
        },
        onInit: function () {
        },
        labels: {
            cancel: "Cancel",
            current: "current step:",
            pagination: "Pagination",
            finish: "提交",
            next: "下一步",
            previous: "退回",
            loading: "Loading ..."
        }
    }
}(jQuery);
/**
 * Created by admin on 2017/6/9.
 */
